QLearner的类对象
描述:
用于创建QLearner对象的类。
用法示例:
local ML = require("ML")
local qLearner = ML.QLearner()
pack
类型: 函数。
描述:
根据给定的离散条件有多少种可能的提示和当前的条件数值构造状态值。
签名:
pack: function(self: QLearnerClass, hints: {integer}, values: {integer}): --[[state]] integer
参数:
参数名 | 类型 | 描述 |
---|---|---|
hints | {integer} | 表示离散条件有多少种可能的提示。假设有两组条件,取值范围均为0, 1, 2,则提示数组为{3, 3}。 |
values | {integer} | 离散值形式的条件值。 |
返回值:
返回类型 | 描述 |
---|---|
integer | 生成的状态值。 |
unpack
类型: 函数。
描述:
通过给定的离散条件有多少种可能的提示,解析状态值以获取条件值。
签名:
unpack: function(self: QLearnerClass, hints: {integer}, state: integer): {integer}
参数:
参数名 | 类型 | 描述 |
---|---|---|
hints | {integer} | 表示离散条件有多少种可能的提示。假设有两组条件,取值范围均为0, 1, 2,则提示数组为{3, 3}。 |
state | integer | 要解析的状态整数。 |
返回值:
返回类型 | 描述 |
---|---|
{integer} | 包含离散值形式的条件值列表。 |
__call
类型: 元方法。
描述:
创建一个新的QLearner对象,并设定好gamma、alpha和maxQ参数。
签名:
metamethod __call: function(
self: QLearnerClass,
gamma?: number --[[0.5]],
alpha?: number --[[0.5]],
maxQ?: number --[[100.0]]
): QLearner
参数:
参数名 | 类型 | 描述 |
---|---|---|
gamma | number | 计算奖励的调节因子。默认为0.5。 |
alpha | number | 更新Q值的学习速率。默认为0.5。 |
maxQ | number | 最大Q值。默认为100.0。 |
返回值:
返回类型 | 描述 |
---|---|
QLearner | 新创建的QLearner对象。 |